Un pulsante di azione mobile (FAB) è un pulsante circolare che attiva l'azione principale nell'interfaccia utente dell'app. Questa pagina mostra come aggiungere il pulsante FAB al layout, personalizzare parte del suo aspetto e rispondere ai tocchi del pulsante.
Per scoprire di più su come progettare un pulsante di azione sovrapposto nella tua app in base alle linee guida di Material Design, consulta anche Pulsanti: pulsante di azione sovrapposto.
Aggiungi il pulsante di azione mobile al layout
Il seguente codice mostra come deve apparire il FloatingActionButton
nel file di layout:
<com.google.android.material.floatingactionbutton.FloatingActionButton android:id="@+id/fab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="end|bottom" android:src="@drawable/ic_my_icon" android:contentDescription="@string/submit" android:layout_margin="16dp" />
Per impostazione predefinita, il pulsante FAB è colorato dall'attributo colorAccent
, che puoi personalizzare con la tavolozza dei colori del tema.
Puoi configurare altre proprietà FAB utilizzando gli attributi XML o i metodi corrispondenti, ad esempio:
- Le dimensioni del FAB, utilizzando l'attributo
app:fabSize
o il metodosetSize()
. - Il colore dell'effetto ripple del pulsante FAB, utilizzando l'attributo
app:rippleColor
o il metodosetRippleColor()
. - L'icona FAB, utilizzando l'attributo
android:src
o il metodosetImageDrawable()
.
Rispondere ai tocchi dei pulsanti
A questo punto, puoi applicare un View.OnClickListener
per gestire i tocchi del pulsante flottante. Ad esempio, il seguente codice mostra un Snackbar
quando l'utente tocca il FAB:
Kotlin
val fab: View = findViewById(R.id.fab) fab.setOnClickListener { view -> Snackbar.make(view, "Here's a Snackbar", Snackbar.LENGTH_LONG) .setAction("Action", null) .show() }
Java
FloatingActionButton fab = findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Here's a Snackbar", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); } });
Per ulteriori informazioni sulle funzionalità del FAB, consulta il riferimento all'API per FloatingActionButton
.